package simple.runtime.components;

import simple.runtime.annotations.SimpleComponent;
import simple.runtime.annotations.SimpleEvent;
import simple.runtime.annotations.SimpleObject;
import simple.runtime.annotations.SimpleProperty;
import simple.runtime.collections.意图;

/**
 * 广播接收器组件。
 * 
 * @author 东子 xhwsd@qq.com
 */
@SimpleComponent
@SimpleObject
public abstract interface 广播接收器 extends 组件 {

  /**
   * 收到广播事件默认处理方法。
   * 
   * @param intent 意图实例。
   */
  @SimpleEvent
  void 收到广播(意图 intent);

  /**
   * 接受行为属性获取方法。
   * 
   * @return 接受行为。
   */
  @SimpleProperty
  String 接受行为();

  /**
   * 接受行为属性设置方法。
   * 
   * @param action 接受行为，为{@code null}或空文本将注销接收。
   */
  @SimpleProperty
  void 接受行为(String action);
}